Class: Channel
Constructors
constructor
• new Channel(target, chanId)
RPC communication based on window postMessage
Parameters
| Name | Type | Description |
|---|---|---|
target | Window | essentially a window obj we want to send messages to |
chanId | string | Channel id. Allows one frame to contain multiple plugins. |
Properties
chanId
• Private Readonly chanId: string
Channel id. Allows one frame to contain multiple plugins.
eventListeners
• Private eventListeners: Set<ChannelEventListener>
pendingCalls
• Private pendingCalls: Map<string, [(_: undefined | string | void | UnlockParticipantResponse | DisconnectParticipantResponse | DialResponse | TransferParticipantResponse | MuteParticipantResponse | UnmuteParticipantResponse | MuteguestsResponse | UnmuteguestsResponse | VideoMuteParticipantResponse | VideoUnmuteParticipantResponse | LockResponse | UnlockResponse | DisconnectResponse | TransformLayoutResponse | MessageConferenceResponse | MessageParticipantResponse | BuzzParticipantResponse | ClearbuzzParticipantResponse | SpotlightonParticipantResponse | SpotlightoffParticipantResponse | OverlaytextParticipantResponse | DtmfParticipantResponse | DtmfResponse | { data: unknown ; status: number } | ParticipantsResponse | { breakout_uuid: string } | BreakoutsDisconnectResponse | BreakoutDisconnectResponse | BreakoutsEmptyResponse | ButtonRPCReply<undefined> | GenericRPCReply<undefined> | { ack: true }) => void, (_: Error) => void]>
target
• Private target: Window
essentially a window obj we want to send messages to
Accessors
targetWindow
• get targetWindow(): Window
Returns
Window
Methods
addEventListener
▸ addEventListener(listener): void
Parameters
| Name | Type |
|---|---|
listener | ChannelEventListener |
Returns
void
callRPC
▸ callRPC<T>(method, payload, transfer?): Promise<RPCCallReply<T>>
Type parameters
| Name | Type |
|---|---|
T | extends keyof RPCCalls |
Parameters
| Name | Type |
|---|---|
method | T |
payload | RPCCalls[T][``"payload"``] |
transfer? | Transferable[] |
Returns
Promise<RPCCallReply<T>>
emitEvent
▸ Private emitEvent(event): void
Parameters
| Name | Type |
|---|---|
event | Omit<{ chanId: string ; event: "participant:disconnected" ; payload: { participantUuid: string } }, "chanId"> | Omit<{ chanId: string ; event: "ui:button:click" ; payload: { buttonId: string ; input: { buttonId: string } } | { buttonId: string ; input: { participantUuid: string } } | { buttonId: string ; input: undefined } }, "chanId"> | Omit<{ chanId: string ; event: "ui:form:input" ; payload: { input: FormInput ; modalId: string } }, "chanId"> | Omit<{ chanId: string ; event: "ui:prompt:input" ; payload: { input: string ; modalId: string } }, "chanId"> | Omit<{ chanId: string ; event: "event:conference:authenticated" ; payload: { conferenceAlias: string ; conferenceName?: string } }, "chanId"> | Omit<{ chanId: string ; event: "event:conferenceStatus" ; payload: { id: string ; status: ConferenceStatus } }, "chanId"> | Omit<{ chanId: string ; event: "event:connected" ; payload: undefined }, "chanId"> | Omit<{ chanId: string ; event: "event:disconnected" ; payload: { error: string ; errorCode: ExtendedInfinityErrorCode } }, "chanId"> | Omit<{ chanId: string ; event: "event:userInitiatedDisconnect" ; payload: undefined }, "chanId"> | Omit<{ chanId: string ; event: "event:me" ; payload: { id: string ; participant: InfinityParticipant } }, "chanId"> | Omit<{ chanId: string ; event: "event:message" ; payload: Message }, "chanId"> | Omit<{ chanId: string ; event: "event:directMessage" ; payload: Message }, "chanId"> | Omit<{ chanId: string ; event: "event:applicationMessage" ; payload: ApplicationMessage }, "chanId"> | Omit<{ chanId: string ; event: "event:transfer" ; payload: TransferDetails }, "chanId"> | Omit<{ chanId: string ; event: "event:cancelTransfer" ; payload: Record<string, string> }, "chanId"> | Omit<{ chanId: string ; event: "event:stage" ; payload: Stage[] }, "chanId"> | Omit<{ chanId: string ; event: "event:participants" ; payload: { id: string ; participants: InfinityParticipant[] } }, "chanId"> | Omit<{ chanId: string ; event: "event:participantJoined" ; payload: { id: string ; participant: InfinityParticipant } }, "chanId"> | Omit<{ chanId: string ; event: "event:participantLeft" ; payload: { id: string ; participant: InfinityParticipant } }, "chanId"> | Omit<{ chanId: string ; event: "event:raiseHand" ; payload: { id: string ; participant: InfinityParticipant } }, "chanId"> | Omit<{ chanId: string ; event: "event:presentationConnectionStateChange" ; payload: { recv: RTCPeerConnectionState ; send: RTCPeerConnectionState } }, "chanId"> | Omit<{ chanId: string ; event: "event:layoutUpdate" ; payload: LayoutEvent }, "chanId"> | Omit<{ chanId: string ; event: "event:breakoutBegin" ; payload: BreakoutRoom }, "chanId"> | Omit<{ chanId: string ; event: "event:breakoutEnd" ; payload: BreakoutRoom }, "chanId"> | Omit<{ chanId: string ; event: "event:breakoutRefer" ; payload: BreakoutReferDetails }, "chanId"> | Omit<{ chanId: string ; event: "event:languageSelect" ; payload: string }, "chanId"> | Omit<{ chanId: string ; payload: undefined | DisconnectParticipantResponse ; replyTo: string ; rpc: "participant:disconnect" }, "chanId"> | Omit<{ chanId: string ; payload: { ack: true } ; replyTo: string ; rpc: "syn" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | DialResponse ; replyTo: string ; rpc: "conference:dialOut" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | MessageConferenceResponse | MessageParticipantResponse ; replyTo: string ; rpc: "conference:sendMessage" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | MessageConferenceResponse | MessageParticipantResponse ; replyTo: string ; rpc: "conference:sendApplicationMessage" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | LockResponse | UnlockResponse ; replyTo: string ; rpc: "conference:lock" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | MuteguestsResponse | UnmuteguestsResponse ; replyTo: string ; rpc: "conference:muteAllGuests" }, "chanId"> | Omit<{ chanId: string ; payload: void ; replyTo: string ; rpc: "conference:setBandwidth" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | TransformLayoutResponse ; replyTo: string ; rpc: "conference:setLayout" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | { data: unknown ; status: number } ; replyTo: string ; rpc: "conference:sendRequest" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | DisconnectResponse ; replyTo: string ; rpc: "conference:disconnectAll" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | ParticipantsResponse ; replyTo: string ; rpc: "conference:requestParticipants" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | { breakout_uuid: string } ; replyTo: string ; rpc: "conference:breakout" }, "chanId"> | Omit<{ chanId: string ; payload: void ; replyTo: string ; rpc: "conference:joinBreakoutRoom" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | BreakoutsDisconnectResponse ; replyTo: string ; rpc: "conference:closeBreakouts" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | BreakoutDisconnectResponse ; replyTo: string ; rpc: "conference:closeBreakoutRoom" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | BreakoutsEmptyResponse ; replyTo: string ; rpc: "conference:emptyBreakouts" }, "chanId"> | Omit<{ chanId: string ; payload: void ; replyTo: string ; rpc: "conference:breakoutMoveParticipants" }, "chanId"> | Omit<{ chanId: string ; payload: string ; replyTo: string ; rpc: "conference:currentRoomId" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | TransferParticipantResponse ; replyTo: string ; rpc: "participant:transfer" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | MuteParticipantResponse | UnmuteParticipantResponse ; replyTo: string ; rpc: "participant:mute" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | VideoMuteParticipantResponse | VideoUnmuteParticipantResponse ; replyTo: string ; rpc: "participant:muteVideo" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | SpotlightonParticipantResponse | SpotlightoffParticipantResponse ; replyTo: string ; rpc: "participant:spotlight" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | UnlockParticipantResponse ; replyTo: string ; rpc: "participant:admit" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | BuzzParticipantResponse | ClearbuzzParticipantResponse ; replyTo: string ; rpc: "participant:raiseHand" }, "chanId"> | Omit<{ chanId: string ; payload: void ; replyTo: string ; rpc: "participant:setRole" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | OverlaytextParticipantResponse ; replyTo: string ; rpc: "participant:setTextOverlay" }, "chanId"> | Omit<{ chanId: string ; payload: undefined | DtmfParticipantResponse | DtmfResponse ; replyTo: string ; rpc: "participant:sendDTMF" }, "chanId"> | Omit<{ chanId: string ; payload: ButtonRPCReply<undefined> ; replyTo: string ; rpc: "ui:button:add" }, "chanId"> | Omit<{ chanId: string ; payload: ButtonRPCReply<undefined> ; replyTo: string ; rpc: "ui:button:update" }, "chanId"> | Omit<{ chanId: string ; payload: GenericRPCReply<undefined> ; replyTo: string ; rpc: "ui:form:open" }, "chanId"> | Omit<{ chanId: string ; payload: GenericRPCReply<undefined> ; replyTo: string ; rpc: "ui:prompt:open" }, "chanId"> | Omit<{ chanId: string ; payload: GenericRPCReply<undefined> ; replyTo: string ; rpc: "ui:toast:show" }, "chanId"> | Omit<{ chanId: string ; payload: GenericRPCReply<undefined> ; replyTo: string ; rpc: "ui:plugin:toggle" }, "chanId"> | Omit<{ chanId: string ; payload: GenericRPCReply<undefined> ; replyTo: string ; rpc: "ui:removeElement" }, "chanId"> |
Returns
void
onMessage
▸ Private onMessage(evt): void
Parameters
| Name | Type |
|---|---|
evt | MessageEvent<PluginMessage> |
Returns
void
removeEventListener
▸ removeEventListener(listener): void
Parameters
| Name | Type |
|---|---|
listener | ChannelEventListener |
Returns
void
replyRPC
▸ replyRPC<T>(event): void
Type parameters
| Name | Type |
|---|---|
T | extends keyof RPCCalls |
Parameters
| Name | Type |
|---|---|
event | ChannelRPCReply<T> |
Returns
void
sendEvent
▸ sendEvent<T>(event): void
Type parameters
| Name | Type |
|---|---|
T | extends keyof EventMessage |
Parameters
| Name | Type |
|---|---|
event | ChannelEvent<T> |
Returns
void
unregister
▸ unregister(): void
Returns
void